package com.indicator.cMetric;

public class Point {
	private int objNum;
	private double [] objVal;
	public Point(int objNum){
		this.objNum = objNum;
		objVal = new double[objNum];
	}
	public Point(int objNum,String des){
		this.objNum = objNum;
		String [] str = des.split("\\s+");
		objVal = new double[objNum];
		for(int i=0;i<objNum;i++){
			objVal[i] = Double.parseDouble(str[i]);
		}
	}
	/**
	 * @param B
	 * @return
	 */
	public boolean compareToInMaxType(Point B){
		int count = 0;
		for(int i=0;i<objNum;i++){
			if(objVal[i]>=B.getObjVal()[i]){
				count++;
			}
		}
		if(count==objNum){
			for(int i=0;i<objNum;i++){
				if(objVal[i]>B.getObjVal()[i]){
					return true;
				}
			}
		}
		return false; 
	}
	/**
	 * 鏈�灏忓寲闂
	 * @param B
	 * @return
	 */
	public boolean compareToInMinType(Point B){
		int count = 0;
		for(int i=0;i<objNum;i++){
			if(objVal[i]<=B.getObjVal()[i]){
				count++;
			}
		}
		if(count==objNum){
			for(int i=0;i<objNum;i++){
				if(objVal[i]<B.getObjVal()[i]){
					return true;
				}
			}
		}
		return false;
	}
	public int getObjNum() {
		return objNum;
	}
	public void setObjNum(int objNum) {
		this.objNum = objNum;
	}
	public double[] getObjVal() {
		return objVal;
	}
	public void setObjVal(double[] objVal) {
		this.objVal = objVal;
	}
}
